﻿@model ContactManagement.Models.UserRightListModel
@{
    ViewBag.Title = Resources.PageTitles.UsersUserRightsManagementRESX + ": " + Model.CurrentUser.GetFullName();
}
<h2>
    @Resources.PageTitles.UsersUserRightsManagementRESX: @Model.CurrentUser.GetFullName()</h2>
@Html.ShowCustomMessage()
<div>
    <fieldset>
        <legend>@Resources.AdminViews.AssignedUserRightsRESX (@Model.HasUserRight.Count())</legend>
        <p>
        </p>
        @* Wenn keine Nutzer in der Gruppe sind einen Text anzeigen, das keine Nutzer zugeordnet wurden *@
        @if (Model.HasUserRight.Count() == 0)
        {
            @Resources.AdminViews.NoRightsFoundRESX;
        }
        else
        {
            @:<table class="@WebConstants.FilterTableRowsCssClass">
            <thead> <tr> <th>
            @Resources.AccountViews.OptionsRESX
            </th> <th>
            @Html.TableHeaderLinks("Name", Resources.PageTitles.UserRightRESX).CreateSortLink()
            </th> </tr> </thead>
            <tbody>
            @foreach (var eRight in Model.HasUserRight)
            {
                <tr> <td> @* Den Link erstellen für das Löschen des Rechts aus vom User, wichtig ist das in der URL die UserId sowie die RightDbId steht für die die Aktion durchgeführt werden soll *@
                @Html.ActionLink(Resources.Navigation.DeleteUserRightRESX, EActionUser.UserEditUserRightsDelete.ToString(), new { id = Model.CurrentUser.ID, rightId = eRight.ID })
                </td> <td>
                @eRight.GetRightName()
            </td> </tr>
            }
        </tbody>
        }
        </table>
    </fieldset>
</div>
<div>
    <fieldset>
        <legend>@Resources.AdminViews.NotAssignedUserRightsRESX (@Model.HasNoUserRight.Count())</legend>
        <p>
        </p>
        @* Wenn keine Nutzer in der Gruppe sind einen Text anzeigen, das keine Nutzer zugeordnet wurden *@
        @if (Model.HasNoUserRight.Count() == 0)
        {
            @Resources.AdminViews.NoRightsFoundRESX;
        }
        else
        {
            @:<table class="@WebConstants.FilterTableRowsCssClass">
            <thead> <tr> <th>
            @Resources.AccountViews.OptionsRESX
            </th> <th>
            @Html.TableHeaderLinks("Name", Resources.PageTitles.UserRightRESX).CreateSortLink()
            </th> </tr> </thead>
            <tbody>
            @foreach (var eRight in Model.HasNoUserRight)
            {
                <tr> <td> @* Den Link erstellen für das Löschen des Rechts aus vom User, wichtig ist das in der URL die UserId sowie die RightDbId steht für die die Aktion durchgeführt werden soll *@
                @Html.ActionLink(Resources.Navigation.AddUserRightRESX, EActionUser.UserEditUserRightsAdd.ToString(), new { id = Model.CurrentUser.ID, rightId = eRight.ID })
                </td> <td>
                @eRight.GetRightName()
            </td> </tr>
            }
        </tbody>
        }
        </table>
    </fieldset>
</div>
<div>
    <fieldset>
        <legend>@Resources.AdminViews.InheritedUserRightsFromGroupsRESX</legend>
        <p>
        </p>
        @* Wenn keine Nutzer in der Gruppe sind einen Text anzeigen, das keine Nutzer zugeordnet wurden *@
        @if (Model.InheritUserRightsFromGroups.Count() == 0)
        {
            @Resources.AdminViews.NoRightsFoundRESX;
        }
        else
        {
            @:<table class="@WebConstants.FilterTableRowsCssClass">
            <thead> <tr> <th>
            @Resources.AccountViews.OptionsRESX
            </th> <th>
            @Resources.PageTitles.UserRightRESX
            </th> <th>
            @Resources.PageTitles.UserGroupsRESX
            </th> </tr> </thead>
            <tbody>
            @foreach (var eRight in Model.InheritUserRightsFromGroups)
            {
                <tr> <td>
                @Html.ActionLink(Resources.Navigation.RemoveCompleteUserRightRESX, EActionUser.UserEditUserRightsDeleteComplete.ToString(), new { id = eRight.Key.ID, userId = Model.CurrentUser.ID })
                </td> <td>
                @eRight.Key.GetRightName()
                </td> <td> @* Alle Gruppen durchgehen und anzeigen von denen Die Rechte vererbt werden *@
                @foreach (var eGroup in eRight.Value)
                {
                    @eGroup.Name @:|
                            }
            </td> </tr>
            }
        </tbody>
        }
        </table>
    </fieldset>
    <div>
        @Html.ActionLink(Resources.Navigation.BackToListRESX, EActionUser.UserList.ToString())
        @if (WebRights.Right().Check(EFDataModel.Enums.EUserRights.UserDetails)) { <text>|</text> @Html.ActionLink(Resources.Navigation.UserDetailsRESX, EActionUser.UserDetails.ToString(), new { id = Model.CurrentUser.ID }) }
    </div>
</div>
